home *** CD-ROM | disk | FTP | other *** search
- Especificaciones para la libreria PCX256.H
- ------------------------------------------
-
- Esta librería es utilizada para tratar imagenes en formato PCX de
- 256 colores.
- Se utiliza conjuntamente con la librería GRAFIC1.H ya que utiliza las
- primitivas que ésta proporciona para poner puntos en pantalla.
-
- La librería es muy simple y no presenta demasiadas complicaciones.
-
- A continuación vamos a presentar las estructuras de datos de la
- librería.
-
- typedef struct {
- BYTE Fabricante; // El fabricante 10=ZSoft.PCX
- BYTE Version; // (0..5)
- BYTE Codificacion; // (1) Run Length
- BYTE BitsPixel; // (1,2,4,8) Número de colores.
- WORD Xmin;
- WORD Ymin;
- WORD Xmax;
- WORD Ymax;
- WORD HDpi;
- WORD VDpi;
- BYTE Color[48];
- BYTE Res; // =0
- BYTE NPlanes;
- WORD BytesLine;
- WORD PaletteInfo;
- WORD HscreenSize;
- WORD VscreenSize;
- BYTE Relleno[54];
- } PCXCab;
-
-
-
- typedef struct {
- PCXCab Cabecera;
- PBYTE *Datos;
- PBYTE *Paleta;
- } pcx256;
-
-
- La librería tiene varias funciones cuyo funcionamiento se describe a
- continuación:
-
- boolean LeePCX (img, fichero);
- ------------------------------
- pcx256 *img; Es donde se almacena la imagen PCX.
- char *fichero; Es el nombre y ruta del fichero en formato PCX.
-
- Esta función lee un fichero PCX de disco y lo almacena en memoria
- principal mediante la estructura de datos pcx256.
- La función reserva memoria dinámica para las partes de la paleta
- de colores y la información de la imagen.
- Si todo va bien se devuelve TRUE, si hay algún error se devuelve
- false.
-
-
- void PonPCX( img, Xini, Yini);
- ------------------------------
- pcx256 *img; Es la imagen que se va a visualizar.
- int Xini; Es la coordenada x de la esquina sup izquierda donde
- empieza la visualización.
- int Yini; Es la coordenada y de la esquina sup izquierda donde
- empieza la visualización.
-
- Esta función pone la imagen PCX en pantalla.
-
- void PonmaskPCX ( img, Xini, Yini, col);
- ----------------------------------------
- pcx256 *img; Es la imagen que se va a visualizar.
- int Xini; Es la coordenada x de la esquina sup izquierda donde
- empieza la visualización.
- int Yini; Es la coordenada y de la esquina sup izquierda donde
- empieza la visualización.
- BYTE col; Es el número de color que se omite en la visualización.
-
- Esta función tiene un funcionamiento muy similar al de PonPCX, pero
- con la ventaja de que se omiten todos los puntos cuyo color coincide
- con el color especificado por "col"
-
- NOTA: En ambas funciones la paleta de colores no se modifica. Lo cual
- significa que si la paleta de colores con la que se ha hecho el dibujo
- es diferente a la que utiliza el programa, los colores saldrán distorsionados.
-
- boolean PonfPCX( fichero, Xini, Yini);
- --------------------------------------
- char *fichero; Es el fichero con la imagen PCX.
- int Xini; Es la coordenada inicial en la que debe aparecer
- la imagen.
- int Yini; Es la coordenada y de la esquina superior izquierda
- de la pantalla en donde debe aparecer la imagen.
-
- NOTA: Esta función tampoco modifica la paleta de colores del programa.
- lo cual hace que los colores de la imagen puedan aparecer incorrectamente.
-
-